home *** CD-ROM | disk | FTP | other *** search
-
- require 5;
- package Pod::Simple::PullParserTextToken;
- use Pod::Simple::PullParserToken ();
- @ISA = ('Pod::Simple::PullParserToken');
- use strict;
-
- sub new { # Class->new(text);
- my $class = shift;
- return bless ['text', @_], ref($class) || $class;
- }
-
- # Purely accessors:
-
- sub text { (@_ == 2) ? ($_[0][1] = $_[1]) : $_[0][1] }
-
- sub text_r { \ $_[0][1] }
-
- 1;
-
- __END__
-
- =head1 NAME
-
- Pod::Simple::PullParserTextToken -- text-tokens from Pod::Simple::PullParser
-
- =head1 SYNOPSIS
-
- (See L<Pod::Simple::PullParser>)
-
- =head1 DESCRIPTION
-
- When you do $parser->get_token on a L<Pod::Simple::PullParser>, you might
- get an object of this class.
-
- This is a subclass of L<Pod::Simple::PullParserToken> and inherits all its methods,
- and adds these methods:
-
- =over
-
- =item $token->text
-
- This returns the text that this token holds. For example, parsing
- CZ<><foo> will return a C start-token, a text-token, and a C end-token. And
- if you want to get the "foo" out of the text-token, call C<< $token->text >>
-
- =item $token->text(I<somestring>)
-
- This changes the string that this token holds. You probably won't need
- to do this.
-
- =item $token->text_r()
-
- This returns a scalar reference to the string that this token holds.
- This can be useful if you don't want to memory-copy the potentially
- large text value (well, as large as a paragraph or a verbatim block)
- as calling $token->text would do.
-
- Or, if you want to alter the value, you can even do things like this:
-
- for ( ${ $token->text_r } ) { # Aliases it with $_ !!
-
- s/ The / the /g; # just for example
-
- if( 'A' eq chr(65) ) { # (if in an ASCII world)
- tr/\xA0/ /;
- tr/\xAD//d;
- }
-
- ...or however you want to alter the value...
- }
-
- =back
-
- You're unlikely to ever need to construct an object of this class for
- yourself, but if you want to, call
- C<<
- Pod::Simple::PullParserTextToken->new( I<text> )
- >>
-
- =head1 SEE ALSO
-
- L<Pod::Simple::PullParserToken>, L<Pod::Simple>, L<Pod::Simple::Subclassing>
-
- =head1 COPYRIGHT AND DISCLAIMERS
-
- Copyright (c) 2002 Sean M. Burke. All rights reserved.
-
- This library is free software; you can redistribute it and/or modify it
- under the same terms as Perl itself.
-
- This program is distributed in the hope that it will be useful, but
- without any warranty; without even the implied warranty of
- merchantability or fitness for a particular purpose.
-
- =head1 AUTHOR
-
- Sean M. Burke C<sburke@cpan.org>
-
- =cut
-
-